#include<iostream>
using namespace std;
//class A
//{
//public:
//	void func()
//	{
//		cout << "A" << endl;
//	}
//	int a;
//};
//class B :public A
//{
//public:
//	void func()
//	{
//		cout << "B" << endl;
//	}
//	int a;
//};
//int main()
//{
//	B b;
//	A* p = &b;
//	p->func();
//	return 0;
//}
class A
{
public:
	A()
	{
		p();
	}
	virtual void p()
	{
		cout << "A" << endl;
	}
	virtual ~A()
	{
		p();
	}
};
class B :public A
{
public:
	B()
	{
		p();
	}
	void p()
	{
		cout << "B" << endl;
	}
	~B()
	{
		p();
	}
	virtual void func()
	{
		cout << "func()";
	}
};
int main()
{
	B b;
	return 0;
}